import { showNotify } from 'vant';
// 导出一个名为successToast的函数，用于显示成功提示
export const successToast = (message: string, callBack?: Function) => {
  // 调用showNotify函数，显示成功提示
  showNotify({
    type: 'success',
    message: message,
    duration: 3000,
    color: 'white',
    background: 'var(--van-primary-color)',
    // 在提示关闭时，调用回调函数
    onClose: () => {
      callBack && callBack();
    }
  });
};

// 导出一个名为warningToast的函数，用于显示警告提示
export const warningToast = (message: string, callBack?: Function) => {
  // 调用showNotify函数，显示警告提示
  showNotify({
    // 提示类型为警告
    type: 'warning',
    // 提示内容为传入的message参数
    message: message,
    // 提示持续时间为3000毫秒
    duration: 3000,
    // 提示文字颜色为白色
    color: 'white',
    // 提示背景颜色为--van-warning-color变量
    background: 'var(--van-warning-color)',
    // 提示关闭时的回调函数
    onClose: () => {
      // 如果传入了回调函数，则执行回调函数
      callBack && callBack();
    }
  });
};

// 导出一个名为errorToast的函数，用于显示错误提示
export const errorToast = (message: string, callBack?: Function) => {
  // 调用showNotify函数，显示错误提示
  showNotify({
    type: 'danger', // 提示类型为danger，表示错误
    message: message, // 提示信息
    duration: 3000, // 提示持续时间为3秒
    color: 'white', // 提示文字颜色为白色
    background: 'var(--van-danger-color)', // 提示背景颜色为红色
    onClose: () => {
      callBack && callBack(); // 提示关闭后，如果传入了回调函数，则执行回调函数
    }
  });
};

export const toast = {
  install() {
    (window as any).toast = {
      success: successToast,
      warning: warningToast,
      error: errorToast
    };
  }
};
